エキスパートのための MySQL[運用+管理]トラブルシューティングガイド
https://gyazo.com/bdd592454be4da60593d20ae19e6cf6f
タイトル
エキスパートのための MySQL[運用+管理]トラブルシューティングガイド
著者
奥野幹也
年
2010年6月12日
リソース
エキスパートのための MySQL[運用+管理]トラブルシューティングガイド:書籍案内|技術評論社
概要
MySQL 5.1
内容
1.3 MySQLの構造
シングルプロセス・マルチthread
1クライアント 1スレッド
接続オーバーヘッドがマルチプロセスモデルに比べて比較的小さい(+Thread cache)
cf. PostgreSQLはマルチプロセスモデル
Webシステムにおけるデータベース接続アーキテクチャ概論 - ゆううきブログ
バックグラウンドで動くスレッド
I/O(InnoDB)
レプリケーション
1.3.1 ストレージエンジン
種類
MyISAM
InnoDB
MEMORY
Federated
他のMySQLサーバのテーブルにNWごしアクセスする
BLACKHOLE
INSERTしたものをすべて消す
いつ使う?
INSERTしたときにトリガだけ起動したいとき
複数スレーブで同じトリガを実行したい時
MySQL Cluster
Shared nothing architecture
複数ホストに同期複製するのでHA特性がある
ホストが吹き飛んでも大丈夫
その他コミュニティ製のストレージエンジンがある
データの格納やアクセス方法はそれぞれ異なる
テーブルごとに変更できる
負荷特性にあったものに変更できる
1.3.2 レプリケーション
5.1で詳説
1.3.3 セッション
3.2 EXPLAIN
IOスレッドの停止
確認方法
停止しているときはSHOW SLAVE STATUSでSlave_IO_Running: No
原因
master-slave間のNWが原因のことが多い
replication
方法
1. masterからmysqldump
👍 masterが無停止
👎時間がかかる(比較的小規模なデータ量でしか実質利用できない)
2. 複数slaveがあるときに、他のslaveを停止させてコピー
👍 データが大規模でもmasterが無停止。1より早い
👎 slaveが一台止まる
3. スナップショットをつかってmasterからコピー
👍 Slaveがなく、データサイズが大きくてもmasterが無停止、実施時間も早い
👎 スナップショットのあるストレージを使わなければならない
#読書